﻿
namespace Patterns4Net.PatternEnforcer.Cmd.Output
{
    using System.Collections.Generic;
    using System.IO;
    using Core;
    using Attributes.DesignPatterns;

    /// <summary>
    /// Represents a strategy for formatting the results of Pattern Enforcer.
    /// </summary>
    [Strategy]
    public interface IOutputFormatter
    {
        void Start(TextWriter writer);

        void Print(IEnumerable<PatternEnforcer.ResultItem> result, TextWriter writer);

        void End(TextWriter writer);
    }
}
